package cn.iocoder.yudao.module.enterprise.convert.model;

import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.enterprise.controller.admin.model.vo.*;
import cn.iocoder.yudao.module.enterprise.dal.dataobject.model.ModelDO;
import cn.iocoder.yudao.module.enterprise.dal.dataobject.model.ModelEmissionDO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

import java.util.List;

/**
 * 核算模型 Convert
 *
 * @author StevenShen
 */
@Mapper
public interface ModelConvert {

    ModelConvert INSTANCE = Mappers.getMapper(ModelConvert.class);

    ModelDO convert(ModelCreateReqVO bean);

    ModelDO convert(ModelUpdateReqVO bean);

    ModelRespVO convert(ModelDO bean);

    ModelEmissionDO convert(ModelEmissionCreateReqVO createReqVO);

    List<ModelRespVO> convertList(List<ModelDO> list);

    PageResult<ModelRespVO> convertPage(PageResult<ModelDO> page);

    PageResult<ModelEmissionRespVO> convertPage02(PageResult<ModelEmissionDO> page);

}
